Real time self-adjusting calibration algorithm

ABSTRACT

A method of calibrating glucose monitor data includes collecting the glucose monitor data over a period of time at predetermined intervals. It also includes obtaining at least two reference glucose values from a reference source that temporally correspond with the glucose monitor data obtained at the predetermined intervals. Also included is calculating the calibration characteristics using the reference glucose values and corresponding glucose monitor data to regress the obtained glucose monitor data. And, calibrating the obtained glucose monitor data using the calibration characteristics is included. In preferred embodiments, the reference source is a blood glucose meter, and the at least two reference glucose values are obtained from blood tests. In additional embodiments, calculation of the calibration characteristics includes linear regression and, in particular embodiments, least squares linear regression. Alternatively, calculation of the calibration characteristics includes non-linear regression. Data integrity may be verified and the data may be filtered.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part of U.S. patent applicationSer. No. 10/141,375, filed May 8, 2002, and entitled “Real TimeSelf-Adjusting Calibration Algorithm,” which itself is acontinuation-in-part of U.S. patent application Ser. No. 09/511,580,filed Feb. 23, 2000, and entitled “Glucose Monitor Calibration Methods”,now U.S. Pat. No. 6,424,847, both of which are herein incorporated byreference in their entirety and from which priority is claimed.

1. FIELD OF THE INVENTION

This invention relates to glucose monitor systems and, in particularembodiments, to calibration methods for glucose monitoring systems.

2. BACKGROUND OF THE INVENTION

Over the years, body characteristics have been determined by obtaining asample of bodily fluid. For example, diabetics often test for bloodglucose levels. Traditional blood glucose determinations have utilized apainful finger prick using a lancet to withdraw a small blood sample.This results in discomfort from the lancet as it contacts nerves in thesubcutaneous tissue. The pain of lancing and the cumulative discomfortfrom multiple needle pricks is a strong reason why patients fail tocomply with a medical testing regimen used to determine a change in abody characteristic over a period of time. Although non-invasive systemshave been proposed, or are in development, none to date have beencommercialized that are effective and provide accurate results. Inaddition, all of these systems are designed to provide data at discretepoints and do not provide continuous data to show the variations in thecharacteristic between testing times.

A variety of implantable electrochemical sensors have been developed fordetecting and/or quantifying specific agents or compositions in apatient's blood. For instance, glucose sensors are being developed foruse in obtaining an indication of blood glucose levels in a diabeticpatient. Such readings are useful in monitoring and/or adjusting atreatment regimen which typically includes the regular administration ofinsulin to the patient. Thus, blood glucose readings improve medicaltherapies with semi-automated medication infusion pumps of the externaltype, as generally described in U.S. Pat. Nos. 4,562,751; 4,678,408; and4,685,903; or automated implantable medication infusion pumps, asgenerally described in U.S. Pat. No. 4,573,994, which are hereinincorporated by reference. Typical thin film sensors are described incommonly assigned U.S. Pat. Nos. 5,390,671; 5,391,250; 5,482,473; and5,586,553 which are incorporated by reference herein. See also U.S. Pat.No. 5,299,571.

SUMMARY OF THE DISCLOSURE

It is an object of an embodiment of the present invention to provide animproved glucose monitor system and method, which obviates for practicalpurposes, the above mentioned limitations.

According to an embodiment of the invention, a method of calibratingglucose monitor data includes obtaining glucose monitor data atpredetermined intervals over a period of time. It also includesobtaining at least two reference glucose values from a reference sourcethat correspond with the glucose monitor data obtained at thepredetermined intervals. Additionally, calculating calibrationcharacteristics using the at least two reference values and thecorresponding glucose monitor data to regress the obtained glucosemonitor data is included. And calibrating the obtained glucose monitordata using the calibration characteristics is included. In preferredembodiments, the reference source is a blood glucose meter, and the atleast two reference glucose values are obtained from blood tests. Inadditional embodiments, the calculation of the calibrationcharacteristics is obtained using linear regression, and in particularembodiments, using least squares linear regression. Alternatively, thecalculation of the calibration characteristics is obtained usingnon-linear regression or a non-regression technique.

In particular embodiments, the predetermined period of time is a 24 hourperiod, and the predetermined intervals are 5 minute intervals. Furtherembodiments may include the step of shifting the data by a predeterminedtime factor, such as for example, ten minutes. Preferably, thecalibration is performed while obtaining glucose monitor data. However,alternative embodiments may perform the calibration on glucose monitordata that has been collected for post processing by another processingdevice.

According to an embodiment of the invention, a method of calibratingglucose monitor data includes obtaining glucose monitor data at apredetermined memory storage rate. Also included is obtaining at leastone blood glucose reference reading from a blood glucose measuringdevice that corresponds with at least one glucose monitor data pointobtained at the predetermined memory storage rate. Calculating acalibration factor using the at least one blood glucose referencereading and the corresponding at least one glucose monitor data point isincluded. And calibrating the obtained glucose monitor data using thecalibration factor is included. In preferred embodiments, after a firstcalibration factor is calculated, at least one previous calibrationfactor is used with at least one blood glucose reference reading from ablood glucose measuring device and its at least one correspondingglucose monitor data point to calculate a calibration factor. Inadditional embodiments, at least two blood glucose reference readingsare used for calibration. In further embodiments, the calculation of thecalibration factor is obtained using linear regression, and inparticular least squares linear regression. Alternatively, calculationof the calibration factor uses non-linear regression or a non-regressiontechnique

In particular embodiments, the calibration factor is applied to glucosemonitor data obtained before a last blood glucose reference reading froma blood glucose measuring device that corresponds with at least oneglucose monitor data point obtained at a predetermined memory storagerate is used to calculate the calibration factor. Alternatively, thecalibration factor is applied to glucose monitor data obtained after thelast blood glucose reference reading from a blood glucose measuringdevice that is used to calculate the calibration factor.

In particular embodiments, the predetermined memory storage rate is onceevery minutes. And the glucose monitor data that is obtained at apredetermined memory storage rate is the result of utilizing at least 2sample values sampled from a glucose sensor at a rate faster than thememory storage rate.

In preferred embodiments, at least one blood glucose reference readingfrom a blood glucose measuring device is obtained during a predeterminedcalibration period, and a calibration factor is calculated using thosereadings after every predetermined calibration period. In particularembodiments, the predetermined calibration period is 24 hours. Infurther preferred embodiments, a predetermined time shift is used totemporally correlate the at least one blood glucose reference readingfrom a blood glucose measuring device with the at least one glucosemonitor data point obtained at the predetermined memory storage rate. Inparticular embodiments, the predetermined time shift is ten minutes.

In particular embodiments, one or more calculations for calculating afirst calibration factor is different from the one or more calculationsfor calculating subsequent calibration factors. In other particularembodiments, the calculation for calculating a first calibration factoruses a single-point calibration equation. In further particularembodiments, the single-point calibration equation includes an offsetvalue. In other particular embodiments, the one or more calculations forcalculating a calibration factor other than the first calibration factoruses a linear regression calibration equation, a non-linear regressioncalibration equation, or a non-regression technique.

According to an embodiment of the invention, a method of calibratingglucose monitor data includes obtaining glucose monitor data. It alsoincludes obtaining from another blood glucose measuring device at leastone blood glucose reference reading that is temporally associated withat least one glucose monitor data reading. Determining a calibrationequation using the at least one blood glucose reference reading and thecorresponding at least one glucose monitor data reading is alsoincluded. And calibrating the glucose monitor data using the calibrationequation is included.

According to another embodiment of the invention, a method ofcalibrating body characteristic monitor data includes obtaining bodycharacteristic monitor data. It also includes obtaining from anothercharacteristic measuring device at least one characteristic referencereading that is temporally associated with at least one characteristicmonitor data point. Calculating calibration characteristics using the atleast one characteristic reference reading and the corresponding atleast one characteristic monitor data point is included. And calibratingthe obtained characteristic monitor data using the calibrationcharacteristics is included. In particular embodiments, at least twobody characteristic reference readings are used for calculating thecalibration characteristics. In particular embodiments, the calculationfor calculating the calibration characteristics is a linear regressioncalculation.

According to additional embodiments of the invention, an apparatus forcalibrating glucose monitor data includes a glucose monitor, glucosesensor, a blood glucose meter and a processor. The glucose monitorincludes a glucose monitor memory for storing glucose monitor data. Theglucose sensor is electronically coupled to the glucose monitor tosupply the glucose monitor data. The blood glucose measuring deviceprovides at least one blood glucose reference reading that is temporallyassociated with at least one glucose monitor data point. And theprocessor includes software to calculate calibration characteristicsusing the at least one blood glucose reference reading that istemporally associated with at least one glucose monitor data point, andthe processor applies the calibration characteristics to the glucosemonitor data. In particular embodiments, the at least one blood glucosereading is entered into the glucose monitor. In particular embodiments,the glucose monitor includes the processor, or alternatively, theprocessor is in a separate device that receives glucose monitor datafrom the glucose monitor.

In other embodiments of the invention, an apparatus for calibratingglucose monitor data includes means for obtaining glucose monitor data.It also includes means for obtaining from another blood glucosemeasuring device at least one blood glucose reference reading that istemporally associated with at least one glucose monitor data reading.Means for calculating a calibration equation using the at least oneblood glucose reference reading and the corresponding at least oneglucose monitor data reading is included. And means for calibrating theglucose monitor data using the calibration equation is also included.

According to an embodiment of the present invention, a method forverifying the integrity of sensor data may include receiving a firstdata value from the sensor; comparing a first parameter relating to thefirst data value to a first threshold value; receiving a second datavalue from the sensor; comparing a first parameter relating to thesecond data value to the first threshold value; continuing receipt ofdata from the sensor when the first parameter relating to the first datavalue exceeds the first threshold value and the first parameter relatingto the second data value does not exceed the first threshold value; andterminating receipt of data from the sensor when the first parameterrelating to the first data value and the first parameter relating to thesecond data value exceed the first threshold value. The sensor may be aglucose sensor. The data value may be a blood glucose concentration.

The method may also include discarding the first data value when thefirst parameter relating to the first data value exceeds the firstthreshold value and the first parameter relating to the second datavalue does not exceed the first threshold value. The first parameterrelating to the first data value may be a second-order derivative of thefirst data value and the first parameter relating to the second datavalue may be a second-order derivative of the second data value. Thefirst parameter relating to the first data value may also be afirst-order derivative of the first data value the first parameterrelating to the second data value may also be a first-order derivativeof the second data value.

The method may further include comparing a second parameter relating tothe first data value to a second threshold value; continuing receipt ofdata from the sensor when the first parameter relating to the first datavalue exceeds the first threshold value, the second parameter relatingto the first data value exceeds the second threshold value, and thefirst parameter relating to the second data value does not exceed thefirst threshold value; terminating receipt of data from the sensor whenthe first parameter relating to the first data value exceeds the firstthreshold value, the second parameter relating to the first data valueexceeds the second threshold value, and the first parameter relating tothe second data value exceeds the first threshold value.

The method may further include discarding the first data value when thefirst parameter relating to the first data value exceeds the firstthreshold value, the second parameter relating to the first data valueexceeds the second threshold value, and the first parameter relating tothe second data value does not exceed the first threshold value. Thefirst parameter relating to the first data value may be a second-orderderivative of the first data value, the first parameter relating to thesecond data value may be a second-order derivative of the second datavalue, and the second parameter relating to the first data value may bea first-order derivative.

Terminating receipt of data from the sensor may occur when firstparameter relating to the second data value exceeds the first thresholdvalue within a predetermined period of time. Terminating receipt of datafrom the sensor may also occur when the first parameter relating to thesecond data value exceeds the first threshold value within apredetermined period of time. The first and second thresholds may varydepending on the blood glucose concentration.

According to an embodiment of the present invention, a method forfiltering data from a sensor may include receiving a plurality of datavalues from the sensor; obtaining a quantifier of a variance of ameasurement error associated with the plurality of data values; andfiltering the plurality of data values with an adaptive filter. Thequantifier may be an input to the adaptive filter. The sensor may be aglucose sensor. The plurality of data values may be blood glucoseconcentrations.

Obtaining a quantifier may include formulating a standard deviation ofan absolute value of consecutive data points within the plurality ofdata points. Formulating the standard deviation may include formulatinga windowed, unweighted standard deviation or a recursive, weightedstandard deviation. The adaptive filter may be a Kalman filter.

According to an embodiment of the present invention, a method forcalibrating a sensor may include receiving a plurality of data valuesfrom the sensor; determining the reliability of each data value of theplurality of data values; discarding data values of the plurality ofdata values that are unreliable; filtering the data values of theplurality of data that have not been discarded; and adjusting an outputof the sensor using the filtered data values. The sensor may be aglucose sensor and the plurality of data values may be blood glucoseconcentrations.

Determining the reliability of each data value may include comparingeach data value to a predetermined threshold or comparing a parameterrelated to each data value to a predetermined threshold. The parametermay be a second-order derivative or a first-order derivative. Thepredetermined threshold may vary depending on a current plurality ofdata values. The current plurality of data values may be blood glucoseconcentrations.

Discarding data values may include discarding data values that do notmeet a pre-established criterion related to the predetermined threshold.Filtering the data values may include filtering the data values with anadaptive filter. The adaptive filter may be a Kalman filter.

Filtering the data values with an adaptive filter may include using theadaptive filter with a parameter based on the data values of theplurality of data that have not been discarded. The parameter may be astandard deviation of the data values of the plurality of data that havenot been discarded. Also, the parameter may be a standard deviation ofan absolute value of data values within the data values of the pluralityof data that have not been discarded. The standard deviation may be awindowed, unweighted standard deviation or may be a recursive, weightedstandard deviation.

Other features and advantages of the invention will become apparent fromthe following detailed description, taken in conjunction with theaccompanying drawings which illustrate, by way of example, variousfeatures of embodiments of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

The patent or application file contains at least one drawing executed incolor. Copies of this patent or patent application publication withcolor drawing(s) will be provided by the Office upon request and paymentof the necessary fee.

A detailed description of embodiments of the invention will be made withreference to the accompanying drawings, wherein like numerals designatecorresponding parts in the several figures.

FIG. 1 is a is a perspective view illustrating a subcutaneous glucosesensor insertion set and glucose monitor device in accordance with anembodiment of the present invention;

FIG. 2 is a cross-sectional view of the sensor set and glucose monitordevice as shown along the line 2-2 of FIG. 1;

FIG. 3 is a cross-sectional view of a slotted insertion needle used inthe insertion set of FIGS. 1 and 2;

FIG. 4 is a cross-sectional view as shown along line 4-4 of FIG. 3;

FIG. 5 is a cross-sectional view as shown along line 5-5 of FIG. 3;

FIG. 6 is a partial cross-sectional view corresponding generally withthe encircled region 6 of FIG. 2;

FIG. 7 is a cross-sectional view as shown along line 7-7 of FIG. 2;

FIGS. 8(a-c) are diagrams showing a relationship between sampled values,interval values and memory storage values;

FIG. 9 is a chart showing clipping limits;

FIG. 10 is a sample computer screen image of a post processor analysisof glucose monitor data;

FIG. 11 is a chart illustrating the pairing of a blood glucose referencereading with glucose monitor data;

FIG. 12 is a chart illustrating an example of a single-pointcalibration;

FIG. 13 is a block diagram of a single-point calibration technique;

FIG. 14 is a chart illustrating an example of a linear regressioncalibration.

FIG. 15 is a block diagram of a linear regression calibration technique;

FIG. 16 is a flowchart of a self-adjusting calibration technique inaccordance with an embodiment of the present invention;

FIGS. 17 a and 17 b are charts illustrating an example of theself-adjusting calibration technique in accordance with FIG. 16; and

FIGS. 18 a and 18 b are further charts illustrating an example of theself-adjusting calibration technique in accordance with FIG. 16.

FIG. 19 is shows a generalized flow diagram for verifying data integrityaccording to an embodiment of the present invention.

FIG. 20 shows a detailed flow diagram for implementing verification ofdata integrity according to an embodiment of the present invention.

FIGS. 21 a-21 d show graphs of a sensor current, a first-orderderivative of the sensor current, a second-order derivative of thesensor current, and a calculated sensor signal, respectively, accordingto an embodiment of the present invention.

FIG. 22 is a graph illustrating how a quantifier smoothes out raw signaldata according to an embodiment of the present invention.

FIG. 23 is a graph illustrating how a quantifier smoothes out the rawsignal data according to an embodiment of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

As shown in the drawings for purposes of illustration, the invention isembodied in calibration methods for a glucose monitor that is coupled toa sensor set to provide continuous data recording of readings of glucoselevels from a sensor for a period of time. In preferred embodiments ofthe present invention, the sensor and monitor are a glucose sensor and aglucose monitor for determining glucose levels in the blood and/orbodily fluids of a user. However, it will be recognized that furtherembodiments of the invention may be used to determine the levels ofother body characteristics including analytes or agents, compounds orcompositions, such as hormones, cholesterol, medications concentrations,viral loads (e.g., HIV), bacterial levels, or the like. The glucosesensor is primarily adapted for use in subcutaneous human tissue.However, in still further embodiments, one or more sensors may be placedin other tissue types, such as muscle, lymph, organ tissue, veins,arteries or the like, and used in animal tissue to measure bodycharacteristics. Embodiments may record readings from the sensor on anintermittent, periodic, on-demand, continuous, or analog basis.

FIGS. 1-7 illustrate a glucose monitor system 1 for use with thecalibration methods. The glucose monitor system 1, in accordance with apreferred embodiments of the present invention, includes a subcutaneousglucose sensor set 10 and a glucose monitor 100. In preferredembodiments, the glucose monitor 100 is of the type described in U.S.Patent Application Ser. No. 60/121,664, filed on Feb. 25, 1999, entitled“Glucose Monitor System”, which is herein incorporated by reference. Inalternative embodiments, the glucose monitor is of the type described inU.S. patent application Ser. No. 09/377,472, filed Aug. 19, 1999,entitled “Telemetered Characteristic Monitor System And Method Of UsingThe Same”, which is incorporated by reference herein.

Preferably, the glucose monitor 100 is worn by the user and is connectedto a surface mounted glucose sensor set 10 that is attached to a user'sbody by an electrically conductive cable 102, of the type described inU.S. Patent Application Ser. No. 60/121,656, filed on Feb. 25, 1999,entitled “Test Plug and Cable for a Glucose Monitor”, which isincorporated by reference herein. In preferred embodiments, the sensorinterface may be configured in the form of a jack to accept differenttypes of cables that provide adaptability of the glucose monitor 100 towork with different types of subcutaneous glucose sensors and/or glucosesensors placed in different locations of the user's body. However, inalternative embodiments, the sensor interface is permanently connectedto the cable 102. In additional alternative embodiments, acharacteristic monitor is connected to one or more sensor sets to recorddata of one or more body characteristics from one or more locations onor in the user's body.

The glucose sensor set 10 is of the type described in U.S. PatentApplication Ser. No. 60/121,655, filed on Feb. 25, 1999, entitled“Glucose Sensor Set”, or U.S. patent Ser. No. 08/871,831, filed on Jun.9, 1997, entitled “Insertion Set For A Transcutaneous Sensor”, which areincorporated by reference herein. The glucose sensor 12, of the typedescribed in U.S. patent application Ser. No. 29/101,218, filed on Feb.25, 1999, entitled “Glucose Sensor”, or described in commonly assignedU.S. Pat. Nos. 5,390,671; 5,391,250; 5,482,473; and 5,586,553 which areincorporated by reference herein; extends from the glucose sensor set 10into the user's body with electrodes 20 of the glucose sensor 12terminating in the user's subcutaneous tissue. See also U.S. Pat. No.5,299,571. However, in alternative embodiments, the glucose sensor 12may use other types of sensors, such as chemical based, optical based,or the like. In further alternative embodiments, the sensors may be of atype that is used on the external surface of the skin or placed belowthe skin layer of the user for detecting body characteristics.

The glucose monitor 100 generally includes the capability to record andstore data as it is received from the glucose sensor 12, and includeseither a data port (not shown) or wireless transmitter and/or receiver(also not shown) for transferring data to and/or from a data processor200 such as a computer, communication station, a dedicated processordesigned specifically to work with the glucose monitor, or the like. Theglucose monitor is generally of the type described in U.S. patentapplication Ser. No. 09/377,472, filed Aug. 19, 1999, entitled“Telemetered Characteristic Monitor System And Method of Using TheSame”, which is incorporated by reference herein.

Preferably, the glucose monitor system 1 minimizes inconvenience byseparating complicated monitoring process electronics into two separatedevices; the glucose monitor 100, which attaches to the glucose sensorset 10; and the data processor 200, which contains the software andprogramming instructions to download and evaluate data recorded by theglucose monitor 100. In addition, the use of multiple components (e.g.,glucose monitor 100 and data processor 200) facilitates upgrades orreplacements, since one module, or the other, can be modified,re-programmed, or replaced without requiring complete replacement of themonitor system 1. Further, the use of multiple components can improvethe economics of manufacturing, since some components may requirereplacement on a more frequent basis, sizing requirements may bedifferent for each module, different assembly environment requirements,and modifications can be made without affecting the other components.

The glucose monitor 100 takes raw glucose sensor data from the glucosesensor 12 and assesses it during real-time and/or stores it for laterprocessing or downloading to the data processor 200, which in turnanalyzes, displays, and logs the received data. The data processor 200utilizes the recorded data from the glucose monitor 100 to analyze andreview the blood glucose history. In particular embodiments, the glucosemonitor 100 is placed into a com-station which facilitates downloadingdata to a personal computer for presentation to a physician. A softwareis used to download the data, create a data file, calibrate the data,and display the data in various formats including charts, forms,reports, graphs, tables, lists, and the like. In further embodiments,the glucose monitor system 1 may be used in a hospital environment orthe like.

In alternative embodiments, the glucose monitor includes at leastportions of the software described as contained within the dataprocessor 200 above. The glucose monitor might contain the necessarysoftware to calibrate glucose sensor signals, display a real-time bloodglucose value, show blood glucose trends, activate alarms and the like.A glucose monitor with these added capabilities is useful for patientsthat might benefit from real-time observations of their blood glucosecharacteristics even while they're not in close proximity to a computer,communication device or dedicated independent data processor.

As shown in FIG. 2, the data processor 200, may include a display 214that is used to display the calculated results of the raw glucose sensordata received via a download from the glucose monitor 100. The resultsand information displayed includes, but is not limited to, trendinginformation of the characteristic (e.g., rate of change of glucose),graphs of historical data, average characteristic levels (e.g.,glucose), stabilization and calibration information, raw data, tables(showing raw data correlated with the date, time, sample number,corresponding blood glucose level, alarm messages, and more), and thelike. Alternative embodiments include the ability to scroll through thedata. The display 214 may also be used with buttons (not shown) on thedata processor 200, computer, communication station, characteristicmonitor, or the like, to program or update data. In preferredembodiments, the glucose monitor 100 includes a display 132 to assistthe user in programming the glucose monitor 100, entering data,stabilizing, calibrating, downloading data, or the like.

Still further embodiments of the present invention may include one ormore buttons 122, 124, 126 and 128 on the glucose monitor 100 to programthe monitor 100, to record data, insert flags to correlate data withexternal events for later analysis, input calibration values, or thelike. In addition, the glucose monitor 100 may include an on/off button130 for compliance with safety standards and regulations to temporarilysuspend transmissions or recording. The glucose monitor 100 may also becombined with other medical devices to accept other patient data througha common data network and/or telemetry system. The glucose monitor 100may be combined with a blood glucose meter to directly import orcorrelate glucose calibration reference values such as described in U.S.patent application Ser. No. 09/334,996, filed Jun. 17, 1999, entitled“Characteristic Monitor With A Characteristic Meter and Method Of UsingThe Same”, which is incorporated by reference herein. The glucosemonitor 100 may also be combined with semi-automated medication infusionpumps of the external type, as generally described in U.S. Pat. Nos.4,562,751; 4,678,408; and 4,685,903; or automated implantable medicationinfusion pumps, as generally described in U.S. Pat. No. 4,573,994, whichare herein incorporated by reference. The glucose monitor 100 may recorddata from the infusion pumps and/or may process data from both theglucose sensor 12 and an infusion pump to establish a closed loop systemto control the infusion pump based on glucose sensor measurements. Inother embodiments, other body characteristics are monitored, and themonitor may be used to provide feedback in a closed loop system tocontrol a drug delivery rate. In further alternative embodiments, theglucose monitor 100 can be combined with a glucose sensor set 10 as asingle unit.

Glucose sensors are replaced periodically to avoid infection, decayingenzyme coating and therefore sensor sensitivity, deoxidization of theelectrodes, and the like. The user will disconnect the glucose sensorset 10 from the cable 102 and glucose monitor 100. A needle 14 is usedto install another glucose sensor set 10 and then the needle 14 isremoved. Further description of the needle 14 and the sensor set 10 arefound in U.S. Pat. No. 5,586,553, entitled “Transcutaneous SensorInsertion Set”; co-pending U.S. patent application Ser. No. 09/346,835,filed Jul. 2, 1999, entitled “Insertion Set For A TranscutaneousSensor”; and U.S. Pat. No. 5,951,521, entitled “A SubcutaneousImplantable Sensor Set Having The Capability To Remove Or Deliver FluidsTo An Insertion Site,” which are herein incorporated by reference.

The user connects the connection portion 24 of the glucose sensor set 10through the cable 102 to the glucose monitor 100, so that the glucosesensor 12 can then be used over a prolonged period of time. An initialreading may be downloaded from the glucose sensor set 10 and the glucosemonitor 100 to the data processor 200, to verify proper operation of theglucose sensor 10 and the glucose monitor 100. In preferred embodiments,the glucose sensor set 10 provides data to the glucose monitor 100 forone to seven days before replacement. Glucose sensors 12 may last in theuser's body for longer or shorter periods of time depending on thequality of the installation, cleanliness, the durability of the enzymecoating, deoxidization of the sensor, user's comfort, and the like.

After installation into the body, the glucose sensor 12 is initializedto achieve a steady state of operation before starting a calibrationprocess. Preferably, power supplied by three series silver oxide 357battery cells 110 in the glucose monitor 100 is used to speed theinitialization of the glucose sensor 12. Alternatively, other powersupplies may be used such as, different battery chemistries includinglithium, alkaline, or the like, and different numbers of batteries,solar cells, a DC converter plugged into an AC socket (provided withproper electrical isolation), or the like.

The use of an initialization process can reduce the time for glucosesensor 12 stabilization from several hours to an hour or less. Thepreferred initialization procedure uses a two step process. First, ahigh voltage (preferably between 1.0-1.1 volts—although other voltagesmay be used) is applied between electrodes 20 of the sensor 12 for oneto two minutes (although different time periods may be used) to allowthe sensor 12 to stabilize. Then, a lower voltage (preferably between0.5-0.6 volts—although other voltages may be used) is applied for theremainder of the initialization process (typically 58 minutes or less).Other stabilization/initialization procedures using differing currents,currents and voltages, different numbers of steps, or the like, may beused. Other embodiments may omit the initialization/stabilizationprocess, if not required by the body characteristic sensor or if timingis not a factor. Alternatively, the characteristic monitor or the dataprocessor 200 may apply an algorithm to the sensor data to determinewhen initial transients are sufficiently diminished and the sensor is ata significantly stable state to begin calibration.

In preferred embodiments, data is not considered valid until a sensorinitialization event flag (ESI) is set in the data indicating thatstabilization is complete. Preferably, stabilization is complete after60 minutes or when a user enters a sensor initialization flag using oneor more buttons on the glucose monitor 100. Afterstabilization/initialization is complete the glucose monitor 100 iscalibrated to accurately interpret readings from the newly installedglucose sensor 12.

Beginning with the stabilization process, the glucose monitor 100measures a continuous electrical current signal (ISIG) generated by theglucose sensor 12 relative to a concentration of glucose present in thesubcutaneous tissue of the user's body. In preferred embodiments, theglucose monitor 100 samples the ISIG from the glucose sensor 12 at asampling rate of once every 10 seconds, as shown in FIGS. 8 a-c.Examples of sampled values are labeled A-AD in FIG. 8 a. At an intervalrate of once per minute, the highest and lowest of the sampled values(shown in FIG. 8 a as circled sampled values A, E, G, I, M, R, V, W, Y,and AB) are ignored, and the remaining 4 sampled values from an intervalare averaged to create interval values (shown in FIG. 8 b as values F′,L′, R′, X′, and AD′). At a glucose monitor memory storage rate of onceevery 5 minutes, the highest and lowest of the interval values (shown inFIG. 8 b as values L′ and X′) are ignored and the remaining 3 intervalvalues are averaged and stored in a glucose monitor memory as memoryvalues (shown in FIG. 8 c as point AD″). The memory values are retainedin memory and may be downloaded to the data processor 200. The memoryvalues are used to calibrate the glucose monitor 100 and/or the postprocessor 200 and to analyze blood glucose levels. The sampling rate,interval rate and the memory storage rate may be varied as necessary tocapture data with sufficient resolution to observe transients or otherchanges in the data depending on the rate at which sensor values canchange, which is affected by the sensor sensitivity, the bodycharacteristic being measured, the physical status of the user, and thelike. In other embodiments, all of the sampled values are included inthe average calculations of memory storage values. In alternativeembodiments, more or less sampled values or interval values are ignoreddepending on the signal noise, sensor stability, or other causes ofundesired transient readings. Finally, in still other embodiments, allsampled values and/or interval values are stored in memory.

Clipping limits may be used to limit the signal magnitude variation fromone value to the next thereby reducing the effects of extraneous data,outlying data points, or transients. In preferred embodiments, clippinglimits are applied to the interval values. For instance, interval valuesthat are above a maximum clipping limit or below a minimum clippinglimit are replaced with the nearest clipping limit value.

In alternative embodiments, interval values that are outside of theclipping limits are ignored and not used to calculate the next memorystorage value. In particular embodiments, the detection of intervalvalues outside of the clipping limits is considered a calibrationcancellation event. In further particular embodiments, more than onevalue must be deemed outside of clipping limits to constitute acalibration cancellation event. (Calibration cancellation events arediscussed below).

In preferred embodiments, the clipping limits are shifted after eachdata point. The level that the clipping limits are set to is dependenton an acceptable amount of change from the previous interval value tothe present interval value, which is affected by the sensor sensitivity,signal noise, signal drift, and the like. In preferred embodiments, theclipping limits are calculated based on the magnitude of the previousinterval value. For example, for a previous interval value from 0 up tobut not including 15. Nano-Amps, the clipping limits are set at plus andminus 0.5. Nano-Amps about the previous interval value. For a previousinterval value from 15 up to but not including 25. Nano-Amps, theclipping limits are set at plus and minus 3% of the previous intervalvalue, about the previous interval value. For a previous interval valuefrom 25 up to but not including 50. Nano-Amps, the clipping limits areset at plus and minus 2% of the previous interval value, about theprevious interval value. And for a previous interval value of 50.Nano-Amps and greater, the clipping limits are set at plus and minus 1%about the previous interval value. In alternative embodiments, differentclipping limits may be used.

FIG. 9 shows a typical clipping limit example in which a previousinterval value 500, associated with interval N−1, has a magnitude of13.0. Nano-Amps, which is less than 15.0. Nano-Amps. Therefore, themaximum clipping limit 502 for the present interval value 506 is set at13.5. Nano-Amps, which is 0.5. Nano-Amps greater than the magnitude ofthe previous interval value 500. And the minimum clipping limit 504 isset at 12.5. Nano-Amps which is 0.5. Nano-Amps below the previousinterval value 500. The present interval value 506, associated withinterval N, is between the maximum clipping limit 502 and the minimumclipping limit 504 and is therefore acceptable.

In another example shown in FIG. 9, the present interval value 508,associated with interval M, has a value of 25.0. Nano-Amps which isoutside of the clipping limit 514 and will therefore be clipped. Theprevious interval value 510, associated with interval M−1, is 26.0.Nano-Amps, which is included in the range from 25.0 up to but notincluding 50.0. Nano-Amps as discussed above. Therefore the clippinglimits are ±2%. The maximum clipping limit 512 is 2% greater than theprevious interval value 510,26.0+26.0*0.02=26.5 Nano-Amps.

Similarly the minimum clipping limit 514 is 2% less than the previousinterval value 510,26.0−26.0*0.02=25.5 Nano-Amps.

Since the present interval value 508 of 25.0. Nano-Amps is less than theminimum clipping limit 514 of 25.5. Nano-Amps, it will be clipped, and25.5. Nano-Amps will be used in place of 25.0. Nano-Amps to calculate amemory storage value. For further illustration, FIG. 8 shows intervalvalue R′, which is calculated by averaging sampled values N through Q,is outside of the clipping limits 412 and 414, which result from theprevious interval value L′. Therefore, the magnitude of interval valueR′ is not used to calculate memory value AD″, instead R″, which is themagnitude of the minimum clipping limit 414, is used.

In other embodiments, the clipping limits may be a smaller or largernumber of Nano-Amps or a smaller or larger percentage of the previousinterval value based on the sensor characteristics mentioned above.Alternatively, the clipping limits are calculated as plus or minus thesame percent change from every previous interval value. Other algorithmsuse several interval values to extrapolate the next interval value andset the clipping limits to a percentage higher and lower than the nextanticipated interval value. In further alternatives, clipping may beapplied to the sampled values, interval values, memory values,calculated glucose values, estimated values of a measuredcharacteristic, or any combination of the values.

In preferred embodiments, all interval values are compared to anout-of-range limit of 200. Nano-Amps. If three consecutive intervalvalues are equal to or exceed the out-of-range limit, the sensorsensitivity is deemed to be too high and an alarm is activated to notifythe user that re-calibration is required or the sensor may needreplacing. In alternative embodiments, the out-of-range limit is set athigher or lower values depending on the range of sensor sensitivities,the expected working life of the sensor, the range of acceptablemeasurements, and the like. In particular embodiments, the out-of rangelimit is applied to the sampled values. In other embodiments, theout-of-range limit is applied to the memory storage values.

In preferred embodiments, unstable signal alarm limits are set to detectwhen memory storage values change too much from one to another. Thesignal alarm limits are established similarly to the clipping limitsdescribed above for the interval values, but allow for a larger changein value since there is more time between memory storage values thanbetween interval values. Re-calibration or replacement of the glucosesensor 12 is required once an unstable signal alarm is activated. Inessence, the glucose monitor 100 has detected too much noise in the ISIGfrom the glucose sensor 12.

Each memory storage value is considered valid (Valid ISIG value) unlessone of the following calibration cancellation events occurs: an unstablesignal alarm (as discussed above), a sensor initialization event (asdiscussed above), a sensor disconnect alarm, a power on/off event, anout-of-range alarm (as discussed above), or a calibration error alarm.Only Valid ISIG values are used to calculate blood glucose levels by theglucose monitor 100 or post processor 200, as shown in FIG. 10. Once acalibration cancellation event occurs, the successive memory storagevalues are not valid, and therefore are not used to calculate bloodglucose, until the glucose monitor 100 or post processor 200 isre-calibrated. FIG. 10 shows an explanatory computer screen in whichcell P3 indicates a sensor disconnect alarm with the abbreviation“SeDi”. As shown, blood glucose values do not appear in column K, titled“Sensor Value”, and Valid ISIG values do not appear in column J untilafter the sensor is initialized, as indicated by the “ESI” flag in cellN17. One exception however, is the power on/off event. If the glucosemonitor 100 is turned off for a short enough period of time, generallyup to 30 minutes, the memory storage values are considered Valid ISIGvalues as soon as the power is turned back on. If the power is off forlonger than 30 minutes, the glucose monitor must be re-calibrated beforeISIG values are considered valid. Alternatively, the power may be off 30minutes up to indefinitely and once the power is restored, the memorystorage values are Valid ISIG values. The sensor disconnect alarm isactivated when the glucose monitor 100 does not detect a signal. Inpreferred embodiments, when 2 or more out of 5 interval values collectedwithin a given memory storage rate are less than 1.0. Nano-Amp, thedisconnect alarm is triggered. In alternative embodiments, more or lessvalues need be below a particular amperage to trigger the disconnectalarm depending of the acceptable range or sensor readings and thestability of the sensor signal. The remaining two calibrationcancellation events, the calibration error and an alternative embodimentfor the out-of-range alarm, are discussed in conjunction with thecalibration process below.

Preferred embodiments are directed to calibration techniques that areused by either glucose monitors 100 during real-time measurements of oneor more signals from the glucose sensor 12, or post processors 200during post-processing of data that has been previously recorded anddownloaded (as shown in FIG. 10).

To calibrate the glucose monitor 100, the calibration factor called asensitivity ratio (SR) (blood glucose level/Valid ISIG value) iscalculated for a particular glucose sensor 12. The SR is a calibrationfactor used to convert the Valid ISIG value (Nano-Amps) into a bloodglucose level (mg/dl or mmol/l). In alternative embodiments, the unitsfor the SR may vary depending on the type of signal available from thesensor (frequency, amplitude, phase shift, delta, current, voltage,impedance, capacitance, flux, and the like), the magnitude of thesignals, the units to express the characteristic being monitored, or thelike.

In preferred embodiments, the user obtains a blood glucose referencereading from a common glucose meter, or another blood glucose measuringdevice, and immediately enters the blood glucose reference reading intothe glucose monitor 100. The blood glucose reference reading is assumedto be accurate and is used as a reference for calibration. The glucosemonitor 100, or a post processor 200, must temporally correlate theblood glucose reference reading with a Valid ISIG value to establish apaired calibration data point. Since the glucose level in theinterstitial body fluid tends to lag behind the blood glucose level, theglucose monitor 100 or post processor 200 applies a delay time and thenpairs the blood glucose reference reading with a Valid ISIG value asshown in FIG. 11. In preferred embodiments, an empirically derived 10minute delay is used. Since Valid ISIG values are averaged and storedevery 5 minutes, the glucose monitor 100 correlates the blood glucosereference reading with the third Valid ISIG stored in memory after theblood glucose reference reading is entered (resulting in an effectivedelay of 10 to 15 minutes). FIG. 11 illustrates an example, in which ablood glucose reference reading 600 of 90 mg/dl is entered into theglucose monitor 100 at 127 minutes. The next Valid ISIG value 602 isstored at 130 minutes. Given a 10 minute delay, the glucose referencereading 600 is paired with the Valid ISIG value 604 which is stored at140 minutes with a value of 30. Nano-amps. Note that two numbers areneeded to establish one paired calibration data point, a blood glucosereference reading and a Valid ISIG.

Other delay times may be used depending on the user's metabolism, theresponse time of the sensor, the delay time required for the glucosemeter to calculate a reading and for the reading to be entered into theglucose monitor 100, the type of analyte being measured, the tissue thatthe sensor is placed into, environmental factors, whether the previousglucose Valid ISIG value (or the trend of the Valid ISIG values) washigher or lower than current Valid ISIG value, or the like. Once pairedcalibration data is available, the appropriate calibration process maybe applied dependent on how many paired calibration data points areavailable since the last calibration, the total period of time that theglucose sensor 12 has been in use, and the number of times the glucosesensor 12 has been calibrated.

In preferred embodiments, blood glucose reference readings are enteredinto the glucose monitor 100 periodically through out each day of use.Preferably calibration is conducted immediately after theinitialization/stabilization of a glucose sensor 12 and once a daythereafter. However, calibration may be conducted more or less oftendepending on whether a glucose sensor 12 has been replaced, whether acalibration cancellation event has occurred, the stability of theglucose sensor 12 sensitivity over time, or the like.

In preferred embodiments, blood glucose reference readings are collectedseveral times per day but a new calibration factor is calculated onlyonce per day. Therefore, typically more than one paired calibration datapoint is collected between calibrations. In alternative embodiments, theglucose monitor is calibrated every time a new paired calibration datapoint is collected.

Preferred embodiments use a single-point calibration technique (shown ina block diagram of FIG. 13) to calculate the SR when only one pairedcalibration data point is available, such as immediately afterinitialization/stabilization. And a modified linear regression technique(shown in a block diagram in FIG. 15) is used when two or more pairedcalibration data points are available. Particular embodiments use asingle-point calibration technique whether or not more than one pairedcalibration data point is available.

A single-point calibration equation is based on the assumption that theValid ISIG will be 0 when the blood glucose is 0. As shown in FIG. 12, asingle paired calibration point 700 is used with the point (0,0) toestablish a line 702. The slope of the line from the origin (0,0) andpassing through the single paired calibration point 700 is thesingle-point sensitivity ratio (SPSR). The single-point calibrationequation to calculate the calibration factor SPSR is as follows:${SPSR} = \frac{\text{Blood~~Glucose~~Reference~~Reading}}{{Valid}\quad{ISIG}}$where SPSR=a Single-Point Sensitivity Ratio.

Therefore, the calibrated blood glucose level is,Blood Glucose Level=Valid ISIG*SPSR.

As an example, using the values of 20.1 nano-Amps and 102 mg/dl from thepaired calibration data point shown in FIG. 12, the calculation of SPSRis:SPSR=102/20.1=5.07 mg/dl per Nano-amp.

To continue the example, once the calibration is complete, given aglucose sensor reading of 15.0 nano-Amps, the calculated blood glucoselevel is:Blood Glucose Level=15.0*5.07=76.1 mg/dl.

Additionally, particular embodiments use an offset value in acalibration equation to compensate for the observation that moresensitive glucose sensors 12 (i.e. glucose sensors 12 that generatehigher ISIG values compared to other glucose sensors 12 at the sameblood glucose level, which result in lower SR values) often have a lesslinear performance at very high blood glucose levels when compared toglucose sensors 12 with lower sensitivity (and therefore relativelyhigher SR values). If the SPSR for a particular glucose sensor 12, ascalculated above, is less than a sensitivity threshold value, then amodified SPSR (MSPSR) is calculated using an offset value included in amodified single-point calibration equation. In preferred embodiments,the threshold value is 7. When the initial calculation of the SPSR(shown above) is less than 7, an offset value of 3 is used to calculatethe MSPSR. If the initial calculation of SPSR yields a value of 7 orgreater, then the offset value is 0. Thus, the calibration factor(MSPSR) is calculated using the offset value in the modifiedsingle-point calibration equation, as follows:${MSPSR} = \frac{\text{Blood~~Glucose~~Reference~~Reading}}{\left( {{Valid}\quad{ISIG}\text{-}{offset}} \right)}$

Therefore, the calibrated blood glucose level is,Blood Glucose Level=(Valid ISIG−offset)*MSPSR.

Continuing the above example since the SPSR is 5.07, which is less than7, the sensitivity ratio is recalculated using the MSPSR equation as:MSPSR=102(20.1−3)=5.96 mg/dl per Nano-amp.

And given a glucose sensor reading of 15.0 nano-Amps after calibrationthe calculated blood glucose level is:Blood Glucose Level=(15.0−3)*5.96=71.5 mg/dl.

In another example, given a blood glucose reference reading of 95 from atypical blood glucose meter and a Valid ISIG value of 22.1, theresulting SPSR is 95/22.1=4.3. Since SR<7, the offset=3. Therefore, theMSPSR is 95/[22.1−3]=5.0. Note that when the SPSR is greater than orequal to 7 the offset value is 0 and therefore the MSPSR=SPSR.

In alternative embodiments, the offset value is eliminated from theequation for calculating the blood glucose value as follows:Blood Glucose Level=Valid ISIG*MSPSR.

The threshold value of 7 and the associated offset of 3 have beenempirically selected based on the characteristics observed from testinga particular type of glucose sensors 12, such as those described in U.S.Pat. No. 5,391,250 entitled “Method of Fabricating Thin Film Sensors”,and U.S. Patent Application Ser. No. 60/121,655 filed on Feb. 25, 1999,entitled “Glucose Sensor Set”, incorporated by reference herein. Otherthreshold values may be used in conjunction with other offset values tooptimize the accuracy of the calculated MSPSR for various types ofglucose sensors 12 and sensors used to detect other bodycharacteristics. In fact, many threshold values may be used to selectbetween many offset values. An example using two different thresholdvalues (4 and 7) to select between three different offset values (5, 3and 0) follows:

-   -   If the SPSR<4, then use an offset value of 5, else    -   if 4<=SPSR<7, then use an offset value of 3, else    -   if SPSR>=7 use an offset value of 0.

In preferred embodiments the MSPSR is compared to a valid sensitivityrange to determine if the newly calculated MSPSR is reasonable. In orderto identify potential system problems, a valid MSPSR range of 1.5 to 15is employed. This range has been determined based upon valid glucosesensor sensitivity measurements made in-vitro. MSPSR values outside thisrange result in a calibration error alarm (CAL ERROR) to notify the userof a potential problem. Other valid sensitivity ranges may be applieddepending on the types of sensors to be calibrated, the range ofacceptable sensitivity levels for the various sensor types, themanufacturing consistency expected for the sensors, environmentalconditions, how long the sensor has been in use, or the like.

Preferred embodiments augment the single-point calibration techniqueusing a modified linear regression technique (shown in a block diagramin FIG. 15) when more than one paired calibration data point isavailable. As shown in FIG. 14, the paired calibration data points 800are linearly regressed by a least squares method to calculate the bestfit straight line 802 correlated with paired calibration data points800. The slope of the line resulting from the linear regression is thelinear regression sensitivity ratio (LRSR) used as the calibrationfactor to calibrate the glucose monitor 100. The linear regressioncalibration equation is as follows:${LRSR} = \frac{\sum\limits_{i = 1}^{N}\left\lbrack {X_{i}Y_{i}} \right\rbrack}{\sum\limits_{i = 1}^{N}\left\lbrack X_{i}^{2} \right\rbrack}$

-   -   where X_(i) is the ith Valid ISIG value of paired calibration        data points,    -   Y_(i) is the ith Blood Glucose Reference Reading of paired        calibration data points and,    -   N is the total number of paired calibration data points used for        calibration.    -   i is the identification number of a particular paired        calibration data point.

Therefore, the calibrated blood glucose level is,Blood Glucose Level=Valid ISIG*LRSR.

Note that this linear regression uses a fixed intercept of zero (inother words, when the Valid ISIG is 0 the blood glucose value is 0) andtherefore the linear regression method estimates only one regressionparameter, the slope. In alternative embodiments, other linearregression methods may be used that estimate additional regressionparameters such as an offset value.

Additionally, particular embodiments use an offset value in a modifiedlinear regression calibration equation. The purpose of the offset value,as described above for the single-point calibration, is to compensatefor the observation that more sensitive glucose sensors 12 often have aless linear performance at very high blood glucose levels. If the LRSRfor a particular glucose sensor 12, as calculated in the linearregression calibration equation above, is less than a sensitivitythreshold value, then a modified linear regression sensitivity ratio(MLRSR) is calculated using an offset value included in a modifiedlinear regression calibration equation. In preferred embodiments, thethreshold value is 7. When the initial calculation of the LRSR is lessthan 7, an offset value of 3 is used to calculate the MLRSR. If theinitial calculation of LRSR yields a value of 7 or greater, then theoffset value is 0. Thus, the MLRSR is calculated using the offset valuein the modified linear regression calibration equation, thus:${MLRSR} = \frac{\sum\limits_{i = 1}^{N}\left\lbrack {\left( {X_{i} - {offset}} \right)Y_{i}} \right\rbrack}{\sum\limits_{i = 1}^{N}\left( {X_{i} - {offset}} \right)^{2}}$

Therefore, the calibrated blood glucose level is,Blood Glucose Level=(Valid ISIG−offset)*MLRSR.

Just as in the case of single-point calibration techniques describedabove, other threshold values may be used in conjunction with otheroffset values in the modified linear regression calibration equation tooptimize the accuracy of the calculated MLRSR for various types ofglucose sensors 12 and other characteristic sensors.

In preferred embodiments the MLRSR is compared to a valid sensitivityrange to determine if the newly calculated MLRSR is reasonable. In orderto identify potential system problems, a valid MLRSR range of 2.0 to10.0 is employed. MLRSR values outside this range result in acalibration error alarm (CAL ERROR) to notify the user of a potentialproblem. As described above for the single-point calibration techniques,other valid sensitivity ranges may be applied.

In preferred embodiments, the glucose monitor data is linearly regressedover a 24 hour period (or window), and new sensitivity ratios are usedfor each 24 hour time period. In alternative embodiments, the timeperiod may be reduced to only a few hours or enlarged to cover theentire monitoring period with the glucose sensor (i.e., several days—oreven weeks with implanted sensors). In further embodiments, the timewindow may be fixed at a predetermined size, such as 24 hours, 12 hours,6 hours, or the like, and the window is moved along over the operationallife of the sensor.

In particular embodiments, paired calibration data points frommeasurements taken before the last calibration may be used to calculatea new sensitivity ratio. For example, to calibrate the glucose monitorevery 6 hours, a paired calibration data point is established every 6hours. And the linear regression technique described above is executedusing 4 paired calibration data points, the most recently acquired pointand points from 6, 12 and 18 hours before. Alternatively, the number ofpaired calibration data points used in the calibration may be as few asone or as large as the total number of paired calibration data pointscollected since the glucose sensor was installed. In alternativeembodiments, the number of paired calibration data points used in acalibration equation may grow or shrink during the life of the glucosesensor due to glucose sensor anomalies.

In still other embodiments, the decay characteristics of the glucosesensor 12 over time may be factored into the equation to account fortypical degradation characteristics of the glucose sensor 12 due to sitecharacteristics, enzyme depletion, body movement, or the like.Considering these additional parameters in the calibration equation willmore accurately tailor the calibration equation used by the glucosemonitor 100 or post processor 200. In particular embodiments, otherparameters may be measured along with the blood glucose such as,temperature, pH, salinity, and the like. And these other parameters areused to calibrate the glucose sensor using non-linear techniques.

In a preferred embodiment, real-time calibration adjustment can beperformed to account for changes in the sensor sensitivity during thelifespan of the glucose sensor 12 and to detect when a sensor fails.FIG. 16 (in conjunction with FIGS. 17 and 18) describes the logic of aself-adjusting calibration technique to adjust the calibration formulaor detect a sensor failure in accordance with an embodiment of thepresent invention.

At block 1000, the user obtains a blood glucose reference from a commonglucose meter, or another blood glucose measuring device, andimmediately enters the blood glucose reference reading into the glucosemonitor 100. For every meter blood glucose entry, an instantaneouscalibration check is performed and compared to an expected range of thevalue of the calibration check, as in block 1010. In preferredembodiments, the Calibration Factor current is calculated (i.e.CFc=Meter BG/current ISIG value) to determine if the CFc (CalibrationFactor current) ratio is between 1.5 to 12 (“Criteria 1”), a minimumcriteria for an accurate ISIG value. If data is outside this range,raising the likelihood of a sensor failure or incorrectdetermination/entry of the meter BG value, a Cal Error alarm istriggered at block 1030 and the Recalibration Variable (Recal), which isoriginally set at NOFAIL is changed to FAILC1. At this point, anotherblood glucose reference reading is requested and entered into theglucose monitor 100 to determine whether there was indeed a sensorfailure or the Meter Blood Glucose value was incorrectly inputted. Theprevious MBGc that generated the error can be thrown out completely. IfCriteria 1 is again not satisfied at block 1010, an end of the sensorlife message will be generated at block 1040 since then the Recalvariable would be recognized as FAILC1 at block 1020. However, ifCriteria 1 is met at block 1010, then the logic proceeds to block 1200,where a check of the Recal Variable is made to see if Recal variable isnot equal to FAILC2. The Recal variable is set to FAILC2 only ifCriteria 2a is not met, which will be discussed below. Given that theRecal variable at this point would only be set a NOFAIL or FAILC1, thelogic proceeds to block 1210.

At block 1210, a check is performed if the existing calibration slopeestimation (Previous Estimated Slope or PES) is much different from theinstantaneous calibration check (CFc) performed using the new meterblood glucose value. A significant difference can indicate a sensorfailure. In the preferred embodiment, a difference between the previousestimated slope (PES) and the current calibration check (CFc) in termsof percentage (threshold 1) and mg/dl (threshold 2) is performed.Threshold 1 and 2 can be set depending on the particular sensorcharacteristics. An example of checking the changes between the PES andCFc is as follows:Abs(1−PES/CFc)*100=Threshold 1 andAbs(CFc−PES)*Isig=Threshold 2

If the percentage and/or absolute difference exceeds threshold 1 and/orthreshold 2 (collectively “Criteria 2a”), then depending o the Recalvariable (at block 1220), either trigger an end of sensor message atblock 1040 (if the Recal variable is equal to FAILC1 or FAILC2 at block1220) or a Cal Error alarm will be generated at block 1230 (if the Recalvariable is equal to NOFAIL at block 1220). If a Cal Error alarm isgenerated at block 1230, the Recal variable is set to FAILC2, thecurrent meter blood glucose reading will be stored as MBGp (Meter BloodGlucose previous), and another blood glucose reference is requested andentered into the glucose monitor 100 (as MBGc) at block 1000. Byrequesting a new meter blood glucose reading, a comparison can be madebetween the last meter blood glucose reading stored at block 1230 andthe new meter blood glucose reading entered at block 1000 to determinewhether there was a sensor failure. The logic follows the same paths asdescribed above after block 1000 until the logic reaches block 1200. Atblock 1200, since Recal variable is now set to FAILC2 at block 1230, thedifference between the previous calibration check (CFp), which generatedthe FAILC2 alert, and the current calibration check (CFc) is performedat block 1300. In preferred embodiments, the difference between theprevious calibration check and the current calibration check in terms ofpercentage (threshold 1) and mg/dl (threshold 2) is performed. Inaddition, a check is performed on whether there has been a directionalchange between the CFp and CFc (collectively “criteria 2b”). An exampleof criteria 2b is as follows:Abs(1−CFp/CFc)*100=Threshold 1 andAbs(CFc−CFp)*Isig=Threshold 2 and(CFp−PES)*(CFc−CFp)>0

If the percentage and absolute difference exceeds threshold 1 andthreshold 2, and there is no directional change in the slope with thesecond blood glucose meter reading, then an end of sensor message willbe triggered at block 1040. If criteria 2b is met, then the logicproceeds to block 1310. At block 1310, the logic then determines whetherthe difference between the previous value and the current value was dueto a change in sensitivity of the sensor or whether the reading ismerely noise. In the preferred embodiment, the determination of changein sensitivity versus noise is made by using Criteria 3b. Criteria 3bcompares the difference between (the previous estimated slope (PES) andthe current calibration check (CFc)) and (the previous calibration check(CFp) versus the current calibration check (CFc)) at block 1420. Forexample:Abs(PES−CFc)<Abs(CFp−CFc)

As illustrated in FIG. 17 a, if the difference between the estimatedslope (PES) and the current calibration check (CFc) is less than thedifference between the previous calibration check (CFp) and the currentcalibration check (CFc), criteria 3b will be met, indicating that theprevious CFp is an outlier reading (i.e. an anomaly). Then, the MBGp(Meter Blood Glucose previous) is removed at block 1320 and only theMBGc paired with a valid ISIG is used in the slope calculation, which isresumed at block 1430 and applied in interpreting the sensor readings atblock 1130.

As illustrated in FIG. 17 b, if criteria 3b shows that differencebetween the estimated slope (PES) and the current calibration check(CFc) is greater than the difference between the previous calibrationcheck (CFp) and the current calibration check (CFc), criteria 3b wouldnot be met, indicating a change in sensor sensitivity. The slopecalculation is then fine-tuned by creating a new (artificial) meterblood glucose value (MBGN) with a paired ISIG according to the lastslope (Seeding) at block 1330. Using the new paired MBG (MBGN) with thepaired MBGp and MBGc, the slope calculation is restarted (or reset) atblock 1340, as seen in FIG. 17 b. The sensor calculation is thenperformed using the new slope calculation at block 1130. By resettingthe slope calculation, the slope calculation can thus be modifiedautomatically to account for changes in sensor sensitivity.

Continuing the logic from block 1210, if the percentage and/or absolutedifference between the PES and CFc is within threshold 1 and/orthreshold 2 at block 1210, indicating a valid calibration, the Recalvariable is again checked at block 1400. If the Recal variable is equalto FAILC1 (indicating that the meter BG was checked twice), anyfine-tuning determination is skipped and the MBGc paired with a validISIG is used to update the slope calculation at block 1430 and appliedin interpreting the sensor readings at block 1130. If the Recal Variableis not equal to FAILC1, then the logic will decide whether fine-tuningthe slope calculation is needed at blocks 1410 and 1420. In thepreferred embodiments, the decision to fine-tune is first made bycomparing the percentage and/or absolute difference between the PES andCFc (as done in block 1210) with a threshold 3 and/or a threshold 4(“Criteria 4”) at block 1410. For example:Abs(1−PES/CFc)*100<Threshold 3 andAbs(CFc−PES)*ISIG<Threshold 4

Again, threshold 3 and 4 can be determined based on the particularsensor characteristics. If the percentage and/or absolute differencebetween the PES and CFc is less than threshold 3 and/or threshold 4 atblock 1410 (i.e. Criteria 4 met), then the slope calculation can simplybe updated with the new MBGc and paired ISIG value at block 1430 andapplied in interpreting the sensor readings at block 1130.

On the other hand, if the Criteria 4 is not met at block 1410, the logicthen determines at block 1420 whether the difference between theexpected value and the current value was due to a change in sensitivityof the sensor or whether the reading is merely noise. In the preferredembodiment, the determination of change in sensitivity versus noise ismade by using Criteria 3a. Criteria 3a compares the difference between(the previous estimated slope (PES) and the previous calibration check(CFp)) and (the current calibration check (CFc) versus the previouscalibration check (CFp)) at block 1420. For example:Abs(PES−CFp)<Abs(CFc−CFp)

As seen in FIG. 18 a, if the difference between the estimated slope(PES) and the previous calibration check (CFp) is less than thedifference between the current calibration check (CFc) and the previouscalibration check (CFp), criteria 3a will be met, indicating that theerror between the predicted value and the actual value for the CFc wasdue to noise in previous calibrations or beginning of a change in sensorsensitivity which will be picked up at the next calibration performance.The slope calculation is then simply updated with the new paired bloodglucose entry (MBGc) at block 1430 and applied in interpreting thesensor readings at block 1130.

As seen in FIG. 18 b, if criteria 3a shows that difference between theestimated slope (PES) and the previous valid calibration check isgreater than the difference between the previous valid calibration check(CFp) and the current calibration check (CFc), criteria 3b would not bemet, indicating a change in the sensor sensitivity and fine tuning isperformed. Typically, fine tuning is performed when two MBG entry insuccession indicate a change in slope. The slope calculation isfine-tuned by creating a new (artificial) meter blood glucose value(MBGN) with a paired ISIG according to the last slope (Seeding) at block1330. Using the new paired MBG (MBGN) with the paired MBGp and MBGc, theslope calculation is restarted (or reset) at block 1340, as seen in FIG.18 b. The sensor calculation is then performed using the new slopecalculation at block 1130. Again, by resetting the slope calculation,the slope calculation can thus be modified automatically to account forchanges in sensor sensitivity.

Alternative Calibration Techniques

Although the above description described the primary calibrationtechniques in the preferred embodiments, many modifications can be madeto the above described calibration techniques. For example, inalternative embodiments, the calibration factor may be calculated byfirst using a single-point technique to calculate the MSPSR for eachpaired calibration data point and then averaging them together, eitherunweighted or weighted by temporal order of by elapsed time. In otheralternative embodiments, other straight line curve fitting techniquesmay be used to calculate a slope to be used as the SR. In additionalalternative embodiments, other non-regressive curve fitting techniquesmay be used to generate equations that express the blood glucose levelrelative to the Valid ISIG. The equations may be polynomial, parabolic,hyperbolic, asymptotic, logarithmic, exponential, Gaussian or the like.In these embodiments, the SR is not a single value (such as a slope) butrather an equation representing a curve that is used to convert theValid ISIG from the glucose sensor 12 to a blood glucose value in theglucose monitor 100 or a post processor 200. In addition, in using amore robust formula for approximating the slope, the different ISIG canbe given different weights, as to weigh the more recent ISIGs more thanthe older ISIGs. For example where there are contiguous 8 ISIGs (i.e.n=8) are available:${{Filtered}\quad{ISIG}_{(i)}} = \frac{\sum\limits_{i = {i - 7}}^{i}{W_{i}*{RawISIGi}}}{\sum\limits_{i = {i - 7}}^{i}W_{i}}$where Weights (i)=W_(i)=[0.9231 0.7261 0.4868 0.2780 0.1353 0.05610.0198 0.0060]

When contiguous 8 ISIGs are not available (n<8) (i.e. afterinitialization or after triple skips in transmission, the weightingformula would be as follows:${{{Filtered}\quad{ISIG}_{(i)}} = \frac{\sum\limits_{i = {i - {({n - 1})}}}^{i}{W_{i}*{RawISIGi}}}{\sum\limits_{i = {i - {({n - 1})}}}^{i}W_{i}}},$where n=number of contiguous ISIGs.

Once all paired meter BGs/ISIGs (Pairing weights) have been weightdistributed, the modified regression equation shall generate the slope.In a preferred alternative embodiment, a Gaussian function$\frac{1}{\sqrt{2\quad\pi}}{\mathbb{e}}^{\frac{- x^{2}}{2\quad\sigma^{2}}}$is used to curve fit the sensor data, including the weighting functions,the Gaussian Slope is calculated using a modified regression model suchas:${Gaussian\_ slope} = \frac{\sum{{PW}_{i} \times \left( {Filtered\_ Isig}_{i} \right) \times {MBG}_{i}}}{\sum{{PW}_{i} \times \left( {Filtered\_ Isig}_{i} \right)^{2}}}$

-   -   where i=number of pairs in Gaussian buffer and        ${PW}_{i} = {\mathbb{e}}^{\frac{- {({{Ti} - {Tc}})}^{2}}{2\quad\sigma^{2}}}$    -   where Tc is the current time, Ti is Paired MBG/Filtered ISIG        Times and σ=15 hours (or 180 records, which is the width of the        Gaussian profile).

Alternatively, the above calculation can use an exponential slopecalculation rather than a Gaussian calculation. The Exponential Slope iscalculated using a modified regression model such as:${Exponential\_ slope} = \frac{\sum{{PW}_{i} \times \left( {Filtered\_ Isig}_{i} \right) \times {MBG}_{i}}}{\sum{{PW}_{i} \times \left( {Filtered\_ Isig}_{i} \right)^{2}}}$

-   -   where Δt=elapsed time, σ=hours of time evaluated (e.g. 5 hours,        7 hours, 15 hours, etc) and        ${PW}_{i} = {\mathbb{e}}^{\frac{- {({\Delta\quad t})}}{\sigma}}$

As discussed, preferred embodiments utilize a least squares linearregression equation to calibrate the glucose monitor 100 orpost-processor 200 to analyze the sensor data. However, alternativeembodiments may utilize a multiple component linear regression, orequations with more variables than just the paired calibration datapoints, to account for additional calibration effecting parameters, suchas environment, the individual user's characteristics, sensor lifetime,manufacturing characteristics (such as lot characteristics),deoxidization, enzyme concentration fluctuation or degradation, powersupply variations, or the like. Still other alternative embodiments mayutilize singular and multiple, non-linear regression techniques.

In preferred embodiments, after the first calibration is performed on aparticular glucose sensor 12, subsequent calibrations employ a weightedaverage using a sensitivity ratio (SPSR, MSPSR, LRSR, or MLRSR)calculated from data collected since the last calibration, and previoussensitivity ratios calculated for previous calibrations. So the initialsensitivity ratio (SR1) is calculated immediately afterinitialization/stabilization using a paired calibration data point andis used by the glucose monitor 100 or the post processor 200 until thesecond sensitivity ratio (SR2) is calculated. The second sensitivityratio (SR2) is an average of SR1 and the sensitivity ratio as calculatedusing the paired calibration data points since the initial calibration(SRday1). The equation is as follows:${SR2} = \frac{\left( {{SR1} + {SRday1}} \right)}{2}$

The third sensitivity ratio (SR3) is an average of SR2 and thesensitivity ratio as calculated using the paired calibration data pointssince the second calibration (SRday2). The equation is as follows:${SR3} = \frac{\left( {{SR2} + {SRday2}} \right)}{2}$

The sensitivity ratios for successive days use the same format, which isexpressed below in generic terms:${SR}_{n} = \frac{\left( {{SR}_{({n - 1})} + {SRday}_{({n - 1})}} \right)}{2}$where SR_(n) is the new sensitivity ratio calculated at the beginning oftime period, n, using data from time period (n−1), to be used by a realtime glucose monitor 100, to convert Valid ISIGs to blood glucosereadings throughout time period, n.

SR_((n−1)) is the previous sensitivity ratio calculated at the beginningof time period, n−1, using data from time period (n−2).

SRday_((n−1)) is the sensitivity ratio calculated using pairedcalibration data points collected since the last calibration.

Alternatively, the previous sensitivity ratios may be ignored and the SRis calculated using only the paired calibration data points since thelast calibration. Another alternative is to equally average all previousSRs with the latest SR calculated using only the paired calibration datapoints since the last calibration. In alternative embodiments, thepaired calibration data points are used to establish an equation for acurve representing SR over time. The curve is then used to extrapolateSR to be used until the next paired calibration data point is entered.

In embodiments that use a post processor 200 to evaluate the sensitivityratio, the sensitivity ratio is calculated using paired calibration datapoints over a period of time since the last calibration and is notaveraged with previous SRs. The sensitivity ratio for a period of timecan then be applied to the same period of time over which the pairedcalibration data points were collected. This is more accurate than thereal-time case described above for the glucose monitor 100 because, inthe real-time case, sensitivity ratios from a previous time period mustbe used to calculate the blood glucose level in the present time period.If the sensitivity ratio has changed over time, the calculation of bloodglucose using an old sensitivity ratio introduces an error.

In particular embodiments, once calibration is complete, Valid ISIGvalues are converted to blood glucose readings based on a particularversion of the sensitivity ratio, and the resulting blood glucosereadings are compared to an out-of-range limit. If the resultingcalculated blood glucose level is greater than a maximum out-of-rangelimit of 200 nAmps, the out-of-range alarm is activated. This is acalibration cancellation event, therefore, ISIG values are no longervalid once this alarm is activated. The blood glucose readings areeither not calculated, or at least not considered reliable, until theglucose monitor 100 or post processor 200 is re-calibrated. The user isnotified of the alarm and that re-calibration is needed. In alternativeembodiments, higher or lower maximum out-of-range limits may be useddepending on the sensor characteristics, the characteristic beingmeasured, the user's body characteristics, and the like. In particularembodiments, a minimum out-of-range limit may be used or both a maximumand a minimum out-of-range limits may be used. In other particularembodiments, the out-of-range limits do not cause the blood glucosereadings to become invalid and/or re-calibration is not required;however, an alarm could still be provided. In additional particularembodiments, more than one ISIG value must exceed an out-of-range limitbefore an alarm is activated of a calibration cancellation event istriggered. The ISIG values that are out-of-range are not used to displaya blood glucose value.

In alternative embodiments, calibration is conducted by injecting afluid containing a known value of glucose into the site around theglucose sensor set 10, and then one or more glucose sensor readings aresent to the glucose monitor 100. The readings are processed (filtered,smoothed, clipped, averaged, and the like) and used along with the knownglucose value to calculate the SR for the glucose sensor 12. Particularalternative embodiments, use a glucose sensor set of the type describedin U.S. Pat. No. 5,951,521 entitled “A Subcutaneous Implantable SensorSet Having the Capability To Remove Or Deliver Fluids To An InsertionSite”.

In other alternative embodiments, the glucose sensor 12 is supplied witha vessel containing a solution with a known glucose concentration to beused as a reference, and the glucose sensor 12 is immersed into thereference glucose solution during calibration. The glucose sensor 12 maybe shipped in the reference glucose solution. As described above, theglucose sensor readings are used to calculate a sensitivity ratio giventhe known glucose concentration of the solution.

In another alternative embodiment, the glucose sensors 12 are calibratedduring the manufacturing process. Sensors from the same manufacturinglot, that have similar properties, are calibrated using a sampling ofglucose sensors 12 from the population and a solution with a knownglucose concentration. The sensitivity ratio is provided with theglucose sensor 12 and is entered into the glucose monitor 100 or thepost processor 200 by the user or another individual.

In addition, although he preferred logic of FIG. 18 described specificoperations occurring in a particular order, in alternative embodiments,certain of the logic operations may be performed in a different order,modified, or removed and still implement the preferred embodiments ofthe present invention. Moreover, steps may be added to the abovedescribed logic and still conform to the preferred embodiments. Forexample, although in the preferred embodiment of FIG. 16, the Recalvariable is never reset to no fail, potentially, an additional step ofcan be added to reset the Recal variable to no fail if no cal erroralarms are triggered after a predetermined number of calibrations.

According to embodiments of the present invention, further modificationsto the previously described techniques may be made to provide additionalassurance of the accuracy of the ISIG values. For example, FIG. 19 showsa generalized flow diagram for verifying the integrity of the ISIGvalues and filtering the ISIG values. The integrity check and filteringtechniques described in FIG. 19 can be used in addition to or inreplacement of the clipping limits and Gaussian filtering describedpreviously. In addition, while FIG. 19 describes how the sensor canapply both an integrity check and filtering to the received ISIG valuesin series, in alternative embodiments, the integrity check or filteringcan be performed independently, in parallel, or in exclusion of oneanother.

At step 2000, ISIG values are received from a sensor, such as theglucose sensor 12, for example. The ISIG values may undergo somepre-processing to derive a single ISIG value for a specified length oftime. Thus, the ISIG values at step 2000 can be average ISIG values atperiodic intervals as described previously (e.g., with regards to FIG. 8a-c). In particular embodiments, a 5 min ISIG value is used, but inalternative embodiments, the ISIG interval value can be any valueincluding 1 min, 3 min, 10 min, etc.

At step 2010, the integrity of the data is verified. Thus, ISIG valuesreceived from the sensor are evaluated to determine if the ISIG valuesare accurate and usable or if the ISIG values are inaccurate andunusable. The step 2010 will be described in more detail with regards toFIG. 20.

At step 2020, a decision is made regarding the integrity of the data. Ifthe data is accurate and usable, filtering is performed on the data toderive the glucose values corresponding to the ISIG values. Thefiltering process after the integrity check is described in greaterdetail below. If the data is inaccurate and unusable, the processproceeds to step 2040 and several things may occur. For example, thesensor may be shut down, data verification may be stopped, and/or thefilter data flag may be set to “don't send.” An embodiment of the logicof 2040 is described with respect to FIG. 20 starting at block 2120.

At step 2030, data may be sent to a filter as long as a filter flag isnot equal to “don't send” or until some other mechanism (e.g., CalError) determines that data should not or can no longer be sent to afilter. The send data step 2030 may proceed as long as the dataintegrity verification step 2010 verifies that there are no anomalies inthe data received that would warrant a shut down of the sensor.

FIG. 20 shows a detailed flow diagram for implementing verification ofdata integrity according to an embodiment of the present invention. Atstep 2100, ISIG values are received from a sensor, such as the glucosesensor 12, for example. The ISIG values may be received continuously orat periodic intervals. At this point, the sensor is in a first mode,such as, for example, a “normal” mode.

At step 2110, the ISIG values or a parameter related to the ISIG valuesare compared to a predetermined threshold. For example, according to anembodiment of the present invention, the second-order derivative of theISIG values may be compared to a predetermined threshold, where thepredetermined threshold is based on empirical studies of insulin/glucoseresponse and varies based on the sensitivity of the sensor itself.Generally, the second-order derivative defines the acceleration of bloodglucose concentration in a patient. An abnormal drop of apparent bloodglucose concentration in a patient may indicate a sudden sensor lowcurrent behavior or a high amplitude noise condition. According to anembodiment of the present invention, the second-order derivative may bederived using a 5-point, third order polynomial fit.

In addition, according to an embodiment of the present invention, afirst-order derivative may also be compared against a predeterminedthreshold. The first-order derivative is typically an indication that apatient's blood glucose is changing at a particular rate. Thefirst-order derivative defines the rate of change of glucoseconcentration and can also be able to indicate sensor abnormalities.According to an embodiment of the present invention, the first-orderderivative calculation can be based on the final glucose value readingrather than the ISIG values themselves. However, in alternativeembodiments, the first-order derivative may use ISIG values rather thanthe final sensor readings or the second-order derivative may use thefinal sensor readings rather than ISIG values. In other words, becausethe ISIG values are directly related to the final sensor readings, thefirst-order or second-order derivatives calculations can be derived fromany data points as long as the thresholds are adequately adjusted.

The predetermined threshold may vary depending on the current level ofblood glucose in the patient. The threshold may be a function of thecurrent level of blood glucose in the patient. At higher glucose levels,the glucose level may potentially change at a faster rate than at lowerglucose levels. Thus, at higher glucose levels the threshold may be morenegative than it is at lower glucose levels.

According to an embodiment of the present invention, if the ISIG valuesor a parameter related to the ISIG values do not exceed a predeterminedthreshold, the sensor remains in the first mode and data that isreceived continues to pass through an integrity verification. At step2110, if the ISIG values or a parameter related to the ISIG valuesexceed a predetermined threshold, or, for example, if a combination ofISIG values or a parameter related to the ISIG values exceedpredetermined thresholds, the sensor enters a second mode, such as, forexample, a “probation” mode at step 2120, during which time data may bemonitored for additional threshold violations and, if additionalthreshold violations are found, action may be taken. In furtherembodiments, step 2110 can require just a single trigger, a certaincombination of triggers, or multiple triggers. Thus, for example, step2110 can do a first integrity check (i.e. the second-order derivativeagainst a first threshold) or a second integrity check (first-orderderivative against a second threshold) or both integrity checks. Inaddition, the “probation” mode can be triggered at step 2120 based onjust one integrity check failure or require any or all of the integritychecks to fail.

At step 2130, additional threshold violations may be monitored forsubsequent ISIGs or sensor glucose values received from the sensor. Forexample, according to an embodiment of the present invention, if asecond-order derivative of an ISIG value is less than a predeterminedthreshold, the sensor enters a probation mode. Once the sensor enters aprobation mode, if another second-order derivative of an ISIG valueexceed a predetermined threshold within a predefined period of time,such as one hour, for example, the sensor may enter a third mode at step2140. If no other second-order derivative of an ISIG value exceed apredetermined threshold within the predefined period of time, the dataviolating the predetermined threshold may be discarded and the sensormay return to the first mode of operation and receipt of data andthreshold comparisons may continue.

At step 2140, the sensor has entered a third mode, such as a “sleep”mode, for example, during which time the glucose display is turned off.A variety of conditions may send the sensor into the third mode. Forexample, in addition to the aforementioned condition of two integritycheck failures within one hour, the sensor may enter the sleep mode ifone integrity check failure is received followed by a rapid drop of theblood glucose concentration in the patient. A rapid drop of the bloodglucose concentration in the patient may be defined by a first-orderderivative. For example, according to an embodiment of the presentinvention, a rapid drop of the blood glucose concentration in thepatient is assumed if the first-order derivative of the blood glucoseconcentration is less than −80 mg/dl/min. Also, when Isig is below 10 nAand the first-order derivative is less than a given threshold, theintegrity check may trigger a new reference point. The first-orderderivative of the blood glucose concentration may be derived in avariety of ways. For example, according to an embodiment of the presentinvention, the first-order derivative may be derived using a 5-point,second-order polynomial fit.

Other conditions may also send the sensor into the third mode. Forexample, according to another embodiment of the present invention, twoconsecutive calibration errors may also send the sensor into the thirdmode of operation.

At step 2160, a determination is made on whether the sensor shouldreturn to normal operation or be terminated. A return to normaloperation may be made after a predefined period of time or othercriteria. In any event, in order for the sensor to return to normaloperation, a reference point is needed. Thus, the system prompts thepatient for a blood glucose reading, i.e., the patient must perform a“finger stick” procedure during which the patient extracts a sample ofhis or her blood and measures the glucose concentration in the blood. Ifit is determined that the blood glucose measurement is not a calibrationerror, the sensor returns to normal operation. If it is determined thatthe blood glucose measurement is a calibration error, the sensor isterminated at step 2170.

FIGS. 21 a-21 d show graphs of a sensor current, a first-orderderivative of the sensor current, a second-order derivative of thesensor current, and a calculated sensor signal, respectively. In FIG. 21a, a noisy sensor signal 2200 may be seen. In FIG. 21 c, thecorresponding high amplitude second-order derivative 2210 may be seen.

A variety of filter types may be used to filter the data. Many sensorfilters are linear and non-adaptive in nature and suppress noise in aparticular frequency band, such that the magnitude at each frequency issuppressed by a fixed percentage regardless of amplitude. Other filtersare adaptive in nature and filter signals depending on the degree orvariance of noise disturbance from the environment that is convolutedwith the signal of interest. Because there is a trade-off between theamount of filtering and the amount of delay introduced into a filteredsignal, an adaptive filter may attenuate the amount of filtering toreduce the delay when the raw signal requires no additional filtering.

According to embodiments of the present invention, if an adaptivefilter, such as a Kalman filter, for example, is used to filter ISIGvalues, an adequate quantifier of the variance of measurement error inthe ISIG values may be desired. The quantifier may be used as an inputto the adaptive filter.

The quantifier may be derived in a variety of ways. For example, noisysensors or sensors that are no longer functioning may have similarmeasurement signatures which can be measured using a form of thestandard deviation of a brief history of the difference of consecutivedata points. According to an embodiment of the present invention, awindowed, unweighted standard deviation of the absolute value of thedifference of consecutive data points may be used to derive thequantifier. For example, the quantifier Rk may be determined accordingto the following equation:R _(k) =c*δ _(k) +bwhere c and b are constants and R_(k) is the estimate of the variance ofnoise in the raw signal at the k^(th) discrete time interval. The c andb constants can be adjusted optimally to smooth the raw signal and tominimize delays. The term δ_(k) may be calculated as follows:$\quad{\delta_{k} = \frac{\sum\limits_{i = {k - 1}}^{k}\left( {{{s_{i} - s_{i - l}}} - \frac{\sum\limits_{i = {k - l}}^{k}{{s_{i} - s_{i - 1}}}}{l + 1}} \right)^{2}}{l}}$where S_(k) is the raw signal sampled at the k^(th) discrete timeinterval and 1 is the window size of the history of consecutivedifferences of the raw signal.

According to another embodiment of the present invention, a recursive,weighted standard deviation of the absolute value of the difference ofconsecutive data points may be used to derive the quantifier. Forexample, the quantifier R_(k) may be determined, as before, according tothe following equation:R _(k) =c*δ _(k) +bwhere the term δ_(k) may be calculated as follows:$\delta_{k} = \frac{\sum\left( {\alpha_{k}*\left( {{{s_{k} - s_{k - 1}}} - \frac{\sum\left( {\alpha_{k}^{*}{{s_{k} - s_{k - 1}}}} \right)}{\sum\alpha_{k}}} \right)^{2}} \right)}{{\sum\alpha_{k}} - 1}$where s_(k) is the raw signal sampled at the k^(th) discrete timeinterval, α_(k) is the growing exponential weight:α_(k)=e^(((k*Δt/60)/τ)), τ is the exponential time constant in hours andΔt is the sampling time in minutes.

According to an embodiment of the present invention, the recursiveprocedure may be performed as follows. With Φ=e^(((Δt/60)/τ)), Σα=0,Σβ=0, Σγ=0, and α=1, then,for k=2:N:α=Φ*α;Σα=Σα+α;D=|s _(k) −s _(k−1)|;β=α*D;Σβ=Σβ+β;γ=α*(D−Σβ/Σα)²;Σγ=Σγ+γ;δ_(k)=Σγ/[Σα−1];R _(k) =c*δ _(k) +b

Thus, one of the above formulations may be used to obtain an estimatedvariance of noise, R_(k), on a raw signal. Once R_(k) is obtained, itmay be used as an input to an adaptive filter. The adaptive filter maythen smooth out raw signal data to a degree necessary according to themagnitude of R_(k).

FIGS. 22 and 23 illustrate how the quantifier R_(k) smoothes out the rawsignal data. In FIGS. 22 and 23, “isig” represents a raw data signal,“fisig_(FIR)” represents a raw signal filtered with a Finite Impulseresponse (FIR) filter, and “kisig_(KM)” represents a raw signal filteredwith an adaptive filter, in the embodiment shown a Kalman filter, withthe quantifier R_(k) as an input to the adaptive filter. Specifically,FIG. 22 represents a low R_(k), where almost no filtering and minimaldelay of the signal occurs because the calculated R (quantifier) is verylow. FIG. 23 shows the mixture of different degrees of filtering due tochanges in R_(k). Both FIGS. 22 and 23 show the benefit of the adaptivefilter method over typical FIR filtering

Therefore, while the description above refers to particular embodimentsof the present invention, it will be understood that many modificationsmay be made without departing from the spirit thereof. The accompanyingclaims are intended to cover such modifications as would fall within thetrue scope and spirit of the present invention.

The presently disclosed embodiments are therefore to be considered inall respects as illustrative and not restrictive, the scope of theinvention being indicated by the appended claims, rather than theforegoing description, and all changes which come within the meaning andrange of equivalency of the claims are therefore intended to be embracedtherein.

1. A method for verifying the integrity of sensor data comprising:receiving a first data value from the sensor; comparing a firstparameter relating to the first data value to a first threshold value;receiving a second data value from the sensor; comparing a firstparameter relating to the second data value to the first thresholdvalue; continuing receipt of data from the sensor when the firstparameter relating to the first data value exceeds the first thresholdvalue and the first parameter relating to the second data value does notexceed the first threshold value; and terminating receipt of data fromthe sensor when the first parameter relating to the first data value andthe first parameter relating to the second data value exceed the firstthreshold value.
 2. The method of claim 1, wherein the sensor is aglucose sensor.
 3. The method of claim 2, wherein the data value is ablood glucose concentration.
 4. The method of claim 1, furthercomprising discarding the first data value when the first parameterrelating to the first data value exceeds the first threshold value andthe first parameter relating to the second data value does not exceedthe first threshold value.
 5. The method of claim 1, wherein the firstparameter relating to the first data value is a second-order derivativeof the first data value, and wherein the first parameter relating to thesecond data value is a second-order derivative of the second data value.6. The method of claim 1, wherein the first parameter relating to thefirst data value is a first-order derivative of the first data value,and wherein the first parameter relating to the second data value is afirst-order derivative of the second data value.
 7. The method of claim1, further comprising: comparing a second parameter relating to thefirst data value to a second threshold value; continuing receipt of datafrom the sensor when the first parameter relating to the first datavalue exceeds the first threshold value, the second parameter relatingto the first data value exceeds the second threshold value, and thefirst parameter relating to the second data value does not exceed thefirst threshold value; and terminating receipt of data from the sensorwhen the first parameter relating to the first data value exceeds thefirst threshold value, the second parameter relating to the first datavalue exceeds the second threshold value, and the first parameterrelating to the second data value exceeds the first threshold value. 8.The method of claim 7, wherein the sensor is a glucose sensor.
 9. Themethod of claim 7, wherein the data value is a blood glucoseconcentration.
 10. The method of claim 7, further comprising discardingthe first data value when the first parameter relating to the first datavalue exceeds the first threshold value, the second parameter relatingto the first data value exceeds the second threshold value, and thefirst parameter relating to the second data value does not exceed thefirst threshold value.
 11. The method of claim 7, wherein the firstparameter relating to the first data value is a second-order derivativeof the first data value, wherein the first parameter relating to thesecond data value is a second-order derivative of the second data value,and wherein the second parameter relating to the first data value is afirst-order derivative.
 12. The method of claim 1, wherein terminatingreceipt of data from the sensor occurs when first parameter relating tothe second data value exceeds the first threshold value within apredetermined period of time.
 13. The method of claim 7, whereinterminating receipt of data from the sensor occurs when the firstparameter relating to the second data value exceeds the first thresholdvalue within a predetermined period of time.
 14. The method of claim 3,wherein the first threshold varies depending on the blood glucoseconcentration.
 15. The method of claim 8, wherein the second thresholdvaries depending on the blood glucose concentration.
 16. The method ofclaim 7, wherein the second threshold varies depending on the bloodglucose concentration.
 17. A method for filtering data from a sensorcomprising: receiving a plurality of data values from the sensor;obtaining a quantifier of a variance of a measurement error associatedwith the plurality of data values; and filtering the plurality of datavalues with an adaptive filter, wherein the quantifier is an input tothe adaptive filter.
 18. The method of claim 17, where the sensor is aglucose sensor.
 19. The method of claim 18, wherein the plurality ofdata values are blood glucose concentrations.
 20. The method of claim17, wherein obtaining a quantifier comprises formulating a standarddeviation of an absolute value of consecutive data points within theplurality of data points.
 21. The method of claim 20, whereinformulating the standard deviation comprises formulating a windowed,unweighted standard deviation.
 22. The method of claim 21, wherein thequantifier is equal toR _(k) =c*δ _(k) +b, where$\quad{{\delta_{k} = \frac{\sum\limits_{i = {k - 1}}^{k}\left( {{{s_{i} - s_{i - l}}} - \frac{\sum\limits_{i = {k - l}}^{k}{{s_{i} - s_{i - 1}}}}{l + 1}} \right)^{2}}{l}},}$s_(k) is a raw signal sampled at a k^(th) discrete time interval and lis a window size of a history of consecutive differences of the rawsignal.
 23. The method of claim 20, wherein formulating the standarddeviation comprises formulating a recursive, weighted standarddeviation.
 24. The method of claim 23, wherein the quantifier is equaltoR _(k) =c*δ _(k) +b, where${\delta_{k} = \frac{\sum\left( {\alpha_{k}*\left( {{{s_{k} - s_{k - 1}}} - \frac{\sum\left( {\alpha_{k}^{*}{{s_{k} - s_{k - 1}}}} \right)}{\sum\alpha_{k}}} \right)^{2}} \right)}{{\sum\alpha_{k}} - 1}},$s_(k) is a raw signal sampled at a k^(th) discrete time interval, α_(k)is a growing exponential weight: α_(k)=e^(((k*Δt/60)/τ)), τ is anexponential time constant in hours and Δt is a sampling time in minutes.25. The method of claim 17, wherein the adaptive filter is a Kalmanfilter.
 26. A method for calibrating a sensor comprising: receiving aplurality of data values from the sensor; determining the reliability ofeach data value of the plurality of data values; discarding data valuesof the plurality of data values that are unreliable; filtering the datavalues of the plurality of data that have not been discarded; andadjusting an output of the sensor using the filtered data values. 27.The method of claim 26, wherein the sensor is a glucose sensor.
 28. Themethod of claim 26, wherein the plurality of data values are bloodglucose concentrations.
 29. The method of claim 26, wherein determiningthe reliability of each data value comprises comparing each data valueto a predetermined threshold.
 30. The method of claim 26, whereindetermining the reliability of each data value comprises comparing aparameter related to each data value to a predetermined threshold. 31.The method of claim 30, wherein the parameter is a second-orderderivative.
 32. The method of claim 30, wherein the parameter is afirst-order derivative.
 33. The method of claim 30, wherein thepredetermined threshold varies depending on a current plurality of datavalues.
 34. The method of claim 30, wherein the current plurality ofdata values are blood glucose concentrations.
 35. The method of claim30, wherein discarding data values comprises discarding data values thatdo not meet a pre-established criterion related to the predeterminedthreshold.
 36. The method of claim 26, wherein filtering the data valuescomprises filtering the data values with an adaptive filter.
 37. Themethod of claim 26, wherein the adaptive filter is a Kalman filter. 38.The method of claim 36, wherein filtering the data values with anadaptive filter comprises using the adaptive filter with a parameterbased on the data values of the plurality of data that have not beendiscarded.
 39. The method of claim 38, wherein the parameter is astandard deviation of the data values of the plurality of data that havenot been discarded.
 40. The method of claim 38, wherein the parameter isa standard deviation of an absolute value of data values within the datavalues of the plurality of data that have not been discarded.
 41. Themethod of claim 39, wherein the standard deviation is a windowed,unweighted standard deviation.
 42. The method of claim 39, wherein thestandard deviation is a recursive, weighted standard deviation.
 43. Anapparatus for verifying the integrity of sensor data comprising: meansfor receiving a first data value from the sensor; means for comparing afirst parameter relating to the first data value to a first thresholdvalue; means for receiving a second data value from the sensor; meansfor comparing a first parameter relating to the second data value to thefirst threshold value; means for continuing receipt of data from thesensor when the first parameter relating to the first data value exceedsthe first threshold value and the first parameter relating to the seconddata value does not exceed the first threshold value; and means forterminating receipt of data from the sensor when the first parameterrelating to the first data value and the first parameter relating to thesecond data value exceed the first threshold value.
 44. The apparatus ofclaim 43, wherein the sensor is a glucose sensor.
 45. The apparatus ofclaim 44, wherein the data value is a blood glucose concentration. 46.The apparatus of claim 43, further comprising means for discarding thefirst data value when the first parameter relating to the first datavalue exceeds the first threshold value and the first parameter relatingto the second data value does not exceed the first threshold value. 47.The apparatus of claim 43, wherein the first parameter relating to thefirst data value is a second-order derivative of the first data value,and wherein the first parameter relating to the second data value is asecond-order derivative of the second data value.
 48. The apparatus ofclaim 43, wherein the first parameter relating to the first data valueis a first-order derivative of the first data value, and wherein thefirst parameter relating to the second data value is a first-orderderivative of the second data value.
 49. The apparatus of claim 43,further comprising: means for comparing a second parameter relating tothe first data value to a second threshold value; means for continuingreceipt of data from the sensor when the first parameter relating to thefirst data value exceeds the first threshold value, the second parameterrelating to the first data value exceeds the second threshold value, andthe first parameter relating to the second data value does not exceedthe first threshold value; and means for terminating receipt of datafrom the sensor when the first parameter relating to the first datavalue exceeds the first threshold value, the second parameter relatingto the first data value exceeds the second threshold value, and thefirst parameter relating to the second data value exceeds the firstthreshold value.
 50. An apparatus for filtering data from a sensorcomprising: means for receiving a plurality of data values from thesensor; means for obtaining a quantifier of a variance of a measurementerror associated with the plurality of data values; and means forfiltering the plurality of data values with an adaptive filter, whereinthe quantifier is an input to the adaptive filter.
 51. The apparatus ofclaim 50, where the sensor is a glucose sensor.
 52. The apparatus ofclaim 51, wherein the plurality of data values are blood glucoseconcentrations.
 53. The apparatus of claim 50, wherein means forobtaining a quantifier comprises means for formulating a standarddeviation of an absolute value of consecutive data points within theplurality of data points.
 54. The apparatus of claim 53, wherein meansfor formulating the standard deviation comprises means for formulating awindowed, unweighted standard deviation.
 55. The apparatus of claim 53,wherein means for formulating the standard deviation comprises means forformulating a recursive, weighted standard deviation.
 56. The apparatusof claim 50, wherein the adaptive filter is a Kalman filter.
 57. Anapparatus for calibrating a sensor comprising: means for receiving aplurality of data values from the sensor; means for determining thereliability of each data value of the plurality of data values; meansfor discarding data values of the plurality of data values that areunreliable; means for filtering the data values of the plurality of datathat have not been discarded; and adjusting an output of the sensorusing the filtered data values.
 58. The apparatus of claim 57, whereinthe sensor is a glucose sensor.
 59. The apparatus of claim 57, whereinthe plurality of data values are blood glucose concentrations.
 60. Theapparatus of claim 57, wherein means for determining the reliability ofeach data value comprises means for comparing each data value to apredetermined threshold.
 61. The apparatus of claim 57, wherein meansfor determining the reliability of each data value comprises means forcomparing a parameter related to each data value to a predeterminedthreshold.